package study_nio;

import java.io.File;

/**
 * @author 逝兮诚
 * @date 2017年6月22日 下午3:18:17
 * @see 删除mvn仓库下载不完整的文件爱你家
 */
public class DelMvnFile {

	// 仓库根目录
	static String root = "F:/m2 - copy/repository";

	public static void main(String[] args) {

		File file = new File(root);

		File[] _files = file.listFiles();
		if (_files != null && _files.length > 0) {
			for (File _file : _files) {
				validate(_file);
			}
		}

	}

	public static boolean validate(File file) {
		boolean isHaveJar = false;
		File[] _files = file.listFiles();
		if (_files != null && _files.length > 0) {
			// 判断是否有*jar 是否是有文件夹
			for (File _file : _files) {
				if (_file.getName().endsWith(".jar")) {
					isHaveJar = true;
				}
				if (_file.isDirectory()) {
					boolean isNextHaveJar = validate(_file);
					if (isNextHaveJar) {
						isHaveJar = true;
					}
				}
			}
		}
		if (!isHaveJar) {
			delete(file);
		}
		return isHaveJar;
	}

	public static void delete(File file) {
		File[] _files = file.listFiles();
		if (_files != null && _files.length > 0) {
			for (File _file : _files) {
				if (_file.isDirectory()) {
					delete(_file);
				}
				_file.delete();
			}
		} else {
			file.delete();
		}
	}
}
